import axios from "./axios.js";
import { urlMap } from "@/config";

const qs = require("qs");

console.log(process.env);

export const baseURL = urlMap[process.env.VUE_APP_ENV].baseUrl;
export const uploadFileURL = `${baseURL}/v1/lucky/goods/uploadImg`;
//登录
// export const requestLogin = params => {
//     return axios.post(`${baseURL}/login`, qs.stringify(params));
// };
export const requestLogin = params => {
    return axios.post(`${baseURL}/manage/login`, params,{
        contentTypeJson: true
    });
};


//退出
export const loginOut = params => {
    return axios.post(`${baseURL}/loginOut`, qs.stringify(params));
};

//修改密码
export const updatePwd = params => {
    return axios.post(`${baseURL}/updatePwd`, qs.stringify(params));
};

//验证token
export const checkLogin = params => {
    return axios.post(`${baseURL}/checkLogin`, qs.stringify(params));
};

/**
 * 商品管理
 *
 */
// 商品查询 => 商品列表
export const goodsList = params => {
    return axios.post(`${baseURL}/v1/lucky/goods/goodsList`, qs.stringify(params));
};

// 商品随机查询 => 商品列表
export const randGoods = params => {
    return axios.post(`${baseURL}/v1/lucky/goods/randGoods`, qs.stringify(params));
};

// 商品类型 => 商品列表
export const categoryList = params => {
    return axios.post(`${baseURL}/v1/lucky/goods/categoryList`, qs.stringify(params));
};

// 新增商品 => 商品列表
export const addAndEditGoods = params => {
    return axios.post(`${baseURL}/v1/lucky/goods/addGoods`, params,{
        contentTypeJson: true
    });
};
// 删除商品 => 商品列表
export const delGoods = params => {
    return axios.post(`${baseURL}/v1/lucky/goods/delGoods`, qs.stringify(params));
};

// 晒单数据 => 商品列表
export const showAllWinInfos = params => {
    return axios.post(`${baseURL}/v1/lucky/goods/showAllWinInfos`, qs.stringify(params));
};

// 新增晒单数据 => 商品列表
export const addWinInfos = params => {
    return axios.post(`${baseURL}/v1/lucky/goods/addWinInfos`, params,{
        contentTypeJson: true
    });
};


/**
 * 用户管理
 *
 */

// 用户查询 => 用户列表
export const queryUserInfo = params => {
    return axios.post(`${baseURL}/getUserInfoList`, qs.stringify(params));
};

// 用户查询 => 查找某个用户下的所有下级
export const getFromUserInfoList = params => {
    return axios.post(`${baseURL}/getFromUserInfoList`, qs.stringify(params));
};

// 用户查询 => 更新用户状态
export const updateUserStatus = params => {
    return axios.post(`${baseURL}/updateUserStatus`, qs.stringify(params));
};


// 用户查询 => 用户关系
export const userRelationship = params => {
    return axios.post(`${baseURL}/userRelationship`, qs.stringify(params));
};
// 用户查询=> 用户关系绑定
export const updateUserInviter = params => {
    return axios.post(`${baseURL}/updateUserInviter`, qs.stringify(params));
};

// 用户查询 => 获取用户打款明细
export const getUserWithdrawalRecordList = params => {
    return axios.post(
        `${baseURL}/getUserWithdrawalRecordList`,
        qs.stringify(params)
    );
};

/**
 * 订单管理
 *
 */

// 订单查询 => 订单列表
export const orderList = params => {
    return axios.post(`${baseURL}/getOrderInfoList`, qs.stringify(params));
};

// 订单查询 => 根据订单Id查询订单下的报备截图
export const getOrderImageInfo = params => {
    return axios.post(`${baseURL}/getOrderImageInfo`, qs.stringify(params));
};

// 订单查询 => 修改订单状态以及返佣
export const updateOrder = params => {
    return axios.post(`${baseURL}/updateOrder`, qs.stringify(params));
};

// // 订单查询 => 订单状态枚举
// export const getAllStatus = params => {
//     return axios.post(`${baseURL}/getAllStatus`, qs.stringify(params));
// };

// 订单查询 => 订单列表
// export const orderList = params => {
//     return axios.post(`${baseURL}/orderList`, qs.stringify(params));
// };

// // 订单查询 => 会员订单
// export const paidServiceOrderList = params => {
//     return axios.post(`${baseURL}/paidServiceOrderList`, qs.stringify(params));
// };

// // 订单查询 => 导出会员订单
// export const downloadPaidServiceOrderList = params => {
//     window.location.href = `${baseURL}/downloadPaidServiceOrderList?${qs.stringify(
//         params
//     )}`;
// };

// // 订单查询 => 会员订单状态枚举
// export const getPaidServiceOrderAllStatus = params => {
//     return axios.post(
//         `${baseURL}/getPaidServiceOrderAllStatus`,
//         qs.stringify(params)
//     );
// };
// 订单查询 => 银行名称列表
export const bankNameList = params => {
    return axios.post(`${baseURL}/bankNameList`, qs.stringify(params));
};

/**
 * 财务管理
 */

// 财务管理-支付列表
export const getBillsRecordDetail = params => {
    return axios.post(`${baseURL}/getBillsRecordDetail`, qs.stringify(params));
};

// 财务管理-更新打款状态
export const updateBillsRecordStatus = params => {
    return axios.post(
        `${baseURL}/updateBillsRecordStatus`,
        qs.stringify(params)
    );
};

/**
 * 产品管理
 *
 */

// 产品管理-产品列表
export const getProductInfoList = params => {
    return axios.post(`${baseURL}/getProductInfoList`, qs.stringify(params));
};

// 产品管理-添加产品信息
export const addProductInfo = params => {
    return axios.post(`${baseURL}/addProductInfo`, qs.stringify(params));
};

// 产品管理-更新产品信息
export const updateProductInfo = params => {
    return axios.post(`${baseURL}/updateProductInfo`, qs.stringify(params));
};

// 产品管理-删除产品
export const deleteProductInfo = params => {
    return axios.post(`${baseURL}/deleteProductInfo`, qs.stringify(params));
};

/**
 * 运营位管理
 *
 */

// 运营位管理-运营位列表
export const getOperationResourcesList = params => {
    return axios.post(
        `${baseURL}/getOperationResourcesList`,
        qs.stringify(params)
    );
};

// 运营位管理-新增运营位
export const addOperationResources = params => {
    return axios.post(`${baseURL}/addOperationResources`, qs.stringify(params));
};

// 运营位管理-更新运营位
export const updateOperationResources = params => {
    return axios.post(
        `${baseURL}/updateOperationResources`,
        qs.stringify(params)
    );
};

// 运营位管理-删除运营位
export const deleteOperationResources = params => {
    return axios.post(
        `${baseURL}/deleteOperationResources`,
        qs.stringify(params)
    );
};


/**
 * 渠道管理
 *
 */

// 渠道查询 => 流量渠道列表
export const getFlowChannelList = params => {
    return axios.get(`${baseURL}/getFlowChannelList`, { params });
}; 

// 渠道查询 => 渠道机构创建渠道
export const addFlowChannel = params => {
    return axios.post(`${baseURL}/addFlowChannel`, qs.stringify(params));
};

// 渠道查询 => 修改渠道信息
export const updateFlowChannelInfo = params => {
    return axios.post(`${baseURL}/updateFlowChannelInfo`, qs.stringify(params));
};

// 分发链接 => 分发链接列表
// export const findFlowInfo = params => {
//     return axios.post(`${baseURL}/flow/findFlowInfo`, qs.stringify(params));
// };
export const findFlowInfo = params => {
    return axios.post(`${baseURL}/flow/findFlowInfo`, params,{
        contentTypeJson: true
    });
};

// 分发链接 => 新增链接
export const addFlowInfo = params => {
    return axios.post(`${baseURL}/flow/addFlowInfo`, params,{
        contentTypeJson: true
    });
};

// 分发链接 => 修改链接
export const updateFlowInfo = params => {
    return axios.post(`${baseURL}/flow/updateFlowInfo`, params,{
        contentTypeJson: true
    });
};



/**
 * 运营管理
 *
 */

// 首页配置 => 主图配置列表
export const mainAdPointList = params => {
    return axios.post(`${baseURL}/mainAdPointList`, qs.stringify(params));
};

// 首页配置 => banner配置列表
export const bannerAdPointList = params => {
    return axios.post(`${baseURL}/bannerAdPointList`, qs.stringify(params));
};

// 首页配置 => 获取文章咨询列表
export const getArticles = params => {
    return axios.post(`${baseURL}/findArticleConfig`, qs.stringify(params));
};
// 首页配置 => 更新文章
export const updateArticle = params => {
    return axios.post(`${baseURL}/updateArticleConfig`, qs.stringify(params));
};
// 首页配置 => 增加文章
export const addArticle = params => {
    return axios.post(`${baseURL}/addArticleConfig`, qs.stringify(params));
};
// 首页配置 => 获取文章类型列表
export const getArticleTypes = params => {
    return axios.post(`${baseURL}/articleType`, qs.stringify(params));
};
// 配置 => 获取活动配置
export const getRegActivityConfig = params => {
    return axios.post(`${baseURL}/getRegActivityConfig`, qs.stringify(params));
};
// 配置 => 更新活动配置
export const saveRegActivityConfig = params => {
    return axios.post(`${baseURL}/saveRegActivityConfig`, qs.stringify(params));
};
// 首页配置 => 功能模块配置列表
export const modelAdPointList = params => {
    return axios.post(`${baseURL}/modelAdPointList`, qs.stringify(params));
};

// 首页配置 => 今日推荐配置列表
export const currentRecommendAdPointList = params => {
    return axios.post(
        `${baseURL}/currentRecommendAdPointList`,
        qs.stringify(params)
    );
};

// 首页配置 => 热门银行配置列表
export const hotBankAdPointList = params => {
    return axios.post(`${baseURL}/hotBankAdPointList`, qs.stringify(params));
};

// 首页配置 => 好卡推荐配置列表
export const goodCardAdPointList = params => {
    return axios.post(`${baseURL}/goodCardAdPointList`, qs.stringify(params));
};

// 首页配置 => 活动配置列表
export const benefitActivityList = params => {
    return axios.post(`${baseURL}/benefitActivityList`, qs.stringify(params));
};

// 首页配置 => 添加广告位
export const addAdPoint = params => {
    return axios.post(`${baseURL}/addAdPoint`, qs.stringify(params));
};

// 首页配置 => 更新广告位
export const updateAdPoint = params => {
    return axios.post(`${baseURL}/updateAdPoint`, qs.stringify(params));
};

// 首页配置 => 银行卡资源列表
export const getBankCardList = params => {
    return axios.post(`${baseURL}/getBankCardList`, qs.stringify(params));
};

// 银行奖金配置 => 银行信息列表
export const bankInfoList = params => {
    return axios.post(`${baseURL}/bankInfoList`, qs.stringify(params));
};

// 银行奖金配置 => 添加银行信息
export const addBankInfo = params => {
    return axios.post(`${baseURL}/addBankInfo`, qs.stringify(params));
};

// 银行奖金配置 => 更新银行信息
export const updateBankInfo = params => {
    return axios.post(`${baseURL}/updateBankInfo`, qs.stringify(params));
};

// 银行奖金配置 => 银行渠道码列表
export const bankChannelCodeList = params => {
    return axios.post(`${baseURL}/bankChannelCodeList`, qs.stringify(params));
};

// 银行奖金配置 => 删除银行渠道码
export const deleteBankChannelCode = params => {
    return axios.post(`${baseURL}/deleteBankChannelCode`, qs.stringify(params));
};

// 佣金比例配置 => 佣金比例配置列表
export const bonusRateConfigList = params => {
    return axios.post(`${baseURL}/bonusRateConfigList`, qs.stringify(params));
};

// 佣金比例配置 => 更新佣金比例配置
export const updateBonusRateConfig = params => {
    return axios.post(`${baseURL}/updateBonusRateConfig`, qs.stringify(params));
};

// 会员反佣配置 => 会员返佣配置列表
export const paidServiceList = params => {
    return axios.post(`${baseURL}/paidServiceList`, qs.stringify(params));
};

// 会员反佣配置 => 更新会员返佣配置
export const updatePaidService = params => {
    return axios.post(`${baseURL}/updatePaidService`, qs.stringify(params));
};

// 银行落地页配置 => 银行落地页资源列表
export const getBankListRecords = params => {
    return axios.post(`${baseURL}/getBankListRecords`, qs.stringify(params));
};

// 银行落地页配置 => 更新银行落地页资源信息
export const updateBankList = params => {
    return axios.post(`${baseURL}/updateBankList?id=${params.autoId}`, params, {
        contentTypeJson: true
    });
};

// 银行落地页配置 => 添加银行落地页资源位
export const addBankList = params => {
    return axios.post(`${baseURL}/addBankList`, params, {
        contentTypeJson: true
    });
};

// 银行卡配置 => 银行卡列表
export const getCardListRecords = params => {
    return axios.post(`${baseURL}/getCardListRecords`, qs.stringify(params));
};

// 银行卡配置 => 银行卡对应51卡片详情
export const getCardInfo51 = params => {
    return axios.post(
        `${baseURL}/getCardInfo51?cardId51=${params.cardId51}`,
        params,
        {
            contentTypeJson: true
        }
    );
};

// 银行卡配置 => 添加银行卡
export const addBankCard = params => {
    return axios.post(`${baseURL}/addBankCard`, params, {
        contentTypeJson: true
    });
};

// 银行卡配置 => 更新银行卡信息
export const updateBankCard = params => {
    return axios.post(`${baseURL}/updateBankCard?id=${params.autoId}`, params, {
        contentTypeJson: true
    });
};

// 活动配置 => 活动配置列表
export const getActivityList = params => {
    return axios.post(
        `${baseURL}/getActivityList?${qs.stringify(params)}`,
        params,
        {
            contentTypeJson: true
        }
    );
};

// 活动配置 => 添加活动配置
export const addActivity = params => {
    return axios.post(`${baseURL}/addActivity`, params, {
        contentTypeJson: true
    });
};

// 活动配置 => 更新活动配置
export const updateActivity = params => {
    return axios.post(
        `${baseURL}/updateActivity?activityId=${params.autoId}`,
        params,
        {
            contentTypeJson: true
        }
    );
};

/**
 * 财务管理
 */

// 财务打款明细 => 获取财务打款明细
export const getFinancialPaymentDetailsList = params => {
    return axios.post(
        `${baseURL}/getFinancialPaymentDetailsList`,
        qs.stringify(params)
    );
};
// 财务打款明细 => 营收合计
export const sumTotalAmount = params => {
    return axios.get(`${baseURL}/sumTotalAmount`, { params });
};

// 财务打款明细 => 添加财务打款明细
export const addFinancialPaymentDetails = params => {
    return axios.post(
        `${baseURL}/addFinancialPaymentDetails`,
        qs.stringify(params)
    );
};

// 财务打款明细 => 更新财务打款明细
export const updateFinancialPaymentDetails = params => {
    return axios.post(
        `${baseURL}/updateFinancialPaymentDetails`,
        qs.stringify(params)
    );
};

// 用户打款明细 => 打款状态
export const getUserWithdrawalStatus = params => {
    return axios.post(
        `${baseURL}/getUserWithdrawalStatus`,
        qs.stringify(params)
    );
};

// 用户打款明细 => 更新打款明细
export const updateUserWithdrawalRecord = params => {
    return axios.post(
        `${baseURL}/updateUserWithdrawalRecord`,
        qs.stringify(params)
    );
};
// 用户打款明细 =>导出明细
export const downloadUserWithdrawalRecordList = params => {
    window.location.href = `${baseURL}/downloadUserWithdrawalRecordList?${qs.stringify(
        params
    )}`;
};
// 用户打款明细 微信打款-撤销
export const wxreturn = params => {
    return axios.post(`${baseURL}/wxreturn`, qs.stringify(params));
};
// 用户打款明细 微信打款-打款
export const wxpay = params => {
    return axios.post(`${baseURL}/wxpay`, qs.stringify(params));
};

/**
 * 银行反馈录入
 *
 */

// 匹配审核 => 待审核订单列表
export const forCheck = params => {
    return axios.post(`${baseURL}/order_list/for_check`, qs.stringify(params));
};

// 匹配审核 => 审核订单
export const verify = params => {
    return axios.post(`${baseURL}/order/verify`, qs.stringify(params));
};

// 表格录入 => 查询银行数据导入记录
export const bankDataList = params => {
    return axios.post(`${baseURL}/bank_data_list`, qs.stringify(params));
};

// 表格录入 => 删除银行数据导入记录
export const deleteBankData = params => {
    return axios.post(`${baseURL}/delete_bank_data`, qs.stringify(params));
};

// 表格录入 => 触发银行数据核卡
export const triggerCheck = params => {
    return axios.post(
        `${baseURL}/bank_data/trigger_check`,
        qs.stringify(params)
    );
};

// 数据对照 => 匹配结果列表
export const matchResultList = params => {
    return axios.post(
        `${baseURL}/bank_data/match_result_list`,
        qs.stringify(params)
    );
};

// 数据对照 => 批量更新订单
export const updateOrderByBatchIdAndStatus = params => {
    return axios.post(
        `${baseURL}/bank_data/match_result/updateOrderByBatchIdAndStatus`,
        qs.stringify(params)
    );
};

// // 数据对照 => 更新订单
// export const updateOrder = params => {
//     return axios.post(
//         `${baseURL}/bank_data/match_result/update_order`,
//         qs.stringify(params)
//     );
// };

// 数据对照 => 订单结算
export const matchResultVerify = params => {
    return axios.post(
        `${baseURL}/bank_data/match_result/verify`,
        qs.stringify(params)
    );
};

// 数据对照 => 批量订单结算
export const matchResultBatchVerify = params => {
    return axios.post(
        `${baseURL}/bank_data/match_result/batch/verify`,
        qs.stringify(params)
    );
};

/**
 * 权限管理
 *
 */

//新增用户
export const addAdminUserAndAuth = params => {
    return axios.post(`${baseURL}/addAdminUserAndAuth`, qs.stringify(params));
};
//用户管理 列表显示
export const getAdminUserByParam = params => {
    return axios.post(`${baseURL}/getAdminUserByParam`, qs.stringify(params));
};

//用户管理 删除用户
export const deleteAdminUser = params => {
    return axios.post(`${baseURL}/deleteAdminUser`, qs.stringify(params));
};

// 权限管理 资源管理  获取资源列表
export const getResourceList = params => {
    return axios.get(`${baseURL}/getResourceList`, {
        params: params
    });
};

//资源管理 删除资源
export const deleteResource = params => {
    return axios.post(`${baseURL}/deleteResource`, qs.stringify(params));
};

// 权限管理 角色管理  获取模块名和功能名
export const getResourceModuleName = params => {
    return axios.get(`${baseURL}/getResourceModuleName`, {
        params: params
    });
};
// 权限管理 资源管理  添加资源
export const addResource = params => {
    return axios.post(`${baseURL}/addResource`, qs.stringify(params));
};
// 权限管理 资源管理  修改资源回显
export const echoResource = params => {
    return axios.post(`${baseURL}/echoResource`, qs.stringify(params));
};
// 权限管理 资源管理  修改资源确认
export const editResource = params => {
    return axios.post(`${baseURL}/editResource`, qs.stringify(params));
};
// 权限管理 角色管理  获取角色列表
export const getRolesList = params => {
    return axios.get(`${baseURL}/getRolesList`, {
        params: params
    });
};
// 权限管理 角色管理  新增角色
export const addRoleNameDesc = params => {
    return axios.post(`${baseURL}/addRoleNameDesc`, qs.stringify(params));
};
// 权限管理 角色管理  角色资源列表
export const getRoleResourceByRoleId = params => {
    return axios.post(
        `${baseURL}/getRoleResourceByRoleId`,
        qs.stringify(params)
    );
};
// 权限管理 角色管理  新增角色与资源关系
export const addRoleResource = params => {
    return axios.post(`${baseURL}/addRoleResource`, qs.stringify(params));
};
// 权限管理 角色管理  获取模块和相应功能名
export const getModuleAndFun = params => {
    return axios.get(`${baseURL}/getModuleAndFun`, {
        params: params
    });
};
// 权限管理 角色管理  获取角色名
export const getRoleNameList = params => {
    return axios.get(`${baseURL}/getRoleNameList`, {
        params: params
    });
};
// 权限管理 角色管理  修改角色
export const editOrDelRole = params => {
    return axios.post(`${baseURL}/editOrDelRole`, qs.stringify(params));
};
// 权限管理 角色管理  删除某一角色对应的资源
export const deleteRoleResource = params => {
    return axios.post(`${baseURL}/deleteRoleResource`, qs.stringify(params));
};
